What is category theory and what can we do with it? This is a
rather big question that deserves easily a thousand books to give
a finished answer. We will approach this question in two parts:
the mathematician's approach, and the physicist's approach.

Starting from the mathematician's approach, we will define what a
category is. Unfortunately, (as in most of math) the shorter the
explanation, the more technically incoherent it becomes. 

We will spend some time on our overly technical summary, and give
the technical conditions for a category to be a category. 
In the immortal words of Douglas Adams, we offer the following advice
to the category theory novice: \textbf{don't panic!}

After this brief introduction to the definition (or more
precisely, its statement), we will try to define precisely the
notion of a ``mathematical object''. What is such a creature and
why do we want to define it? Well, it can't
be defined precisely \emph{a priori}, but we can give examples. A
vector space, a group, a topology, a Sigma algebra, a Lie
algebra, a Ring, a Field, a manifold -- all of these are
mathematical objects. In general, anything that is ever defined
is a mathematical object. Why do we want to define it? Well, this
is what mathematicians study, so it's good to have some idea of
what it is. Additionally, we wish to construct mathematical
objects with categories. We first would need to figure out how to
express mathematical objects categorically.

So, having defined a category and a mathematical object, we have
the perfect storm to start expressing mathematical objects
categorically. 

This concludes the mathematician's approach.

The physicist's approach starts off immediately by solving
problems categorically without defining categories. This is a bit
of a mixed bag that Lawvere~\cite{lawvere1997cmf} pioneered. We
will be looking at a lot of problems that plagued early
physicists in classical mechanics, specifically Galileo's work
and (time permitting) Kepler's Laws.

We do this by first examining the problem of how to determine the
trajectory of a flying bird.

We then present how to set up basic problems categorically, and
provide worked examples.
